import Vue from "vue"

import "normalize.css/normalize.css" // A modern alternative to CSS resets

import ElementUI from "element-ui"
import "element-ui/lib/theme-chalk/index.css"

// 引入图片预览插件
// import locale from 'element-ui/lib/locale/lang/en'; // lang i18n
import ImageViewer from "vue2-viewer"
Vue.use(ImageViewer)

import * as echarts from "echarts"
// 需要挂载到Vue原型上
Vue.prototype.$echarts = echarts

import "@/styles/index.scss" // global css

import App from "./App"
import store from "./store"
import router from "./router"
import "@/utils/filter"
import moment from "moment"
Vue.prototype.$moment = moment
Vue.prototype.$uploadUrl = process.env.VUE_APP_BASE_API

import "@/icons" // icon
import "@/permission" // permission control
// 分页组件
import Pagination from "@/components/Pagination"
Vue.component("Pagination", Pagination)
// 全局操作过后的弹窗
import globalMessage from "@/components/globalMessage"
Vue.component("globalMessage", globalMessage)
import globalCard from "@/components/globalCard"
Vue.component("globalCard", globalCard)
import globalMessageBox from "@/components/globalMessageBox"
Vue.component("globalMessageBox", globalMessageBox)
import AppTemplatePage from "@/components/AppTemplatePage/index.vue"
Vue.component("AppTemplatePage", AppTemplatePage)
/**
 * If you don't want to use mock-server
 * you want to use MockJs for mock api
 * you can execute: mockXHR()
 *
 * Currently MockJs will be used in the production environment,
 * please remove it before going online ! ! !
 */
// if (process.env.NODE_ENV === 'production') {
//   const { mockXHR } = require('../mock');
//   mockXHR();
// }

// set ElementUI lang to EN
// Vue.use(ElementUI, { locale });
// 如果想要中文版 element-ui，按如下方式声明

import directive from "@/utils/directive"
Vue.use(directive)

Vue.use(ElementUI)

Vue.config.productionTip = false

const vue = new Vue({
  el: "#app",
  router,
  store,
  render: (h) => h(App)
})
